Browse Source

Produce notifications when users join the mesh

Bob Mottram 8 years ago
parent
commit
4eafa5884e
1 changed files with 329 additions and 296 deletions
  1. 329
    296
      src/zeronetavahi

+ 329
- 296
src/zeronetavahi View File

@@ -76,346 +76,379 @@ ZERONET_ID_STR="ZeroNet ID Service"
76 76
 TEMPFILE_BASE=$(mktemp /tmp/zeronetavahibase.XXXXXX)
77 77
 TEMPFILE=$(mktemp /tmp/zeronetavahi.XXXXXX)
78 78
 
79
+# List of tox users previously seen
80
+PREV_TOX_USERS_FILE=/root/.prev_tox_users
81
+
79 82
 function ipfs_bootstrap {
80
-	cat $TEMPFILE_BASE | grep "IPFS\|hostname =\|address =\|port =\|txt =" > $TEMPFILE
81
-
82
-	state=0
83
-	address=""
84
-	peer=""
85
-	while IFS='' read -r line || [[ -n "$line" ]]; do
86
-		if [ ${state} -eq "3" ]; then
87
-			if [[ $line == *"txt ="* ]]; then
88
-				ipfs_peer_id=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}' | awk -F '"' '{print $2}')
89
-				ipfs bootstrap add /ip4/${address}/tcp/${IPFS_PORT}/ipfs/${ipfs_peer_id}
90
-				state=0
91
-			fi
92
-		fi
93
-		if [ ${state} -eq "2" ]; then
94
-			if [[ $line == *"address ="* ]]; then
95
-				address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
96
-				state=3
97
-			fi
98
-		fi
99
-		if [ ${state} -eq "1" ]; then
100
-			if [[ $line == *"hostname ="* ]]; then
101
-				peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
102
-				state=2
103
-			fi
104
-		fi
105
-		if [[ $line == *"IPFS"* && $line == "= "* ]]; then
106
-			state=1
107
-		fi
108
-	done < "$TEMPFILE"
83
+    cat $TEMPFILE_BASE | grep "IPFS\|hostname =\|address =\|port =\|txt =" > $TEMPFILE
84
+
85
+    state=0
86
+    address=""
87
+    peer=""
88
+    while IFS='' read -r line || [[ -n "$line" ]]; do
89
+        if [ ${state} -eq "3" ]; then
90
+            if [[ $line == *"txt ="* ]]; then
91
+                ipfs_peer_id=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}' | awk -F '"' '{print $2}')
92
+                ipfs bootstrap add /ip4/${address}/tcp/${IPFS_PORT}/ipfs/${ipfs_peer_id}
93
+                state=0
94
+            fi
95
+        fi
96
+        if [ ${state} -eq "2" ]; then
97
+            if [[ $line == *"address ="* ]]; then
98
+                address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
99
+                state=3
100
+            fi
101
+        fi
102
+        if [ ${state} -eq "1" ]; then
103
+            if [[ $line == *"hostname ="* ]]; then
104
+                peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
105
+                state=2
106
+            fi
107
+        fi
108
+        if [[ $line == *"IPFS"* && $line == "= "* ]]; then
109
+            state=1
110
+        fi
111
+    done < "$TEMPFILE"
112
+}
113
+
114
+function detect_new_tox_users {
115
+    CURRENT_USERS_FILE=$1
116
+
117
+    if [ ! -f $CURRENT_USERS_FILE ]; then
118
+        return
119
+    fi
120
+
121
+    # Check that this is a GUI installation with a desktop
122
+    if [ ! -d /home/fbone/Desktop ]; then
123
+        return
124
+    fi
125
+
126
+    # Produce notifications if new users appear
127
+    if [ -f $PREV_TOX_USERS_FILE ]; then
128
+        while IFS='' read -r line || [[ -n "$line" ]]; do
129
+            if ! grep -q "$line" $PREV_TOX_USERS_FILE; then
130
+                # get the nick of the user
131
+                toxuser="$(echo "$line" | awk -F ' ' '{print $1}')"
132
+
133
+                notify-send $"$PROJECT_NAME mesh" $"$toxuser has joined the mesh" --icon=dialog-information
134
+            fi
135
+        done < "$CURRENT_USERS_FILE"
136
+    fi
137
+
138
+    # Store the previous tox users list
139
+    cp -f $CURRENT_USERS_FILE $PREV_TOX_USERS_FILE
109 140
 }
110 141
 
111 142
 function detect_tox_users {
112
-	# don't show the first peer field
113
-	lstox | awk -F ' ' '{$1=""; print $0}' | sed -e 's/^[[:space:]]*//' | sort -d > $TEMPFILE
114
-
115
-	toxctr=0
116
-	echo '<ol type="square">' >> $TOX_USERS_FILE.new
117
-	while IFS='' read -r line || [[ -n "$line" ]]; do
118
-		if [[ $line != "Failed*" && $line != "data "* ]]; then
119
-			echo "  <li>$line</li>" >> $TOX_USERS_FILE.new
120
-			toxctr=$((toxctr + 1))
121
-		fi
122
-	done < "$TEMPFILE"
123
-	if [ $toxctr -eq "0" ]; then
124
-		echo "  <li>${NO_USERS_STR}</li>" >> $TOX_USERS_FILE.new
125
-	fi
126
-	echo '<ol>' >> $TOX_USERS_FILE.new
143
+    # don't show the first peer field
144
+    lstox | awk -F ' ' '{$1=""; print $0}' | sed -e 's/^[[:space:]]*//' | sort -d > $TEMPFILE
145
+
146
+    detect_new_tox_users $TEMPFILE
147
+
148
+    toxctr=0
149
+    echo '<ol type="square">' >> $TOX_USERS_FILE.new
150
+    while IFS='' read -r line || [[ -n "$line" ]]; do
151
+        if [[ $line != "Failed*" && $line != "data "* ]]; then
152
+            echo "  <li>$line</li>" >> $TOX_USERS_FILE.new
153
+            toxctr=$((toxctr + 1))
154
+        fi
155
+    done < "$TEMPFILE"
156
+    if [ $toxctr -eq "0" ]; then
157
+        echo "  <li>${NO_USERS_STR}</li>" >> $TOX_USERS_FILE.new
158
+    fi
159
+    echo '<ol>' >> $TOX_USERS_FILE.new
127 160
 }
128 161
 
129 162
 function assemble_web_page {
130
-	f="$1"
131
-	fhome="$2"
132
-	cat "${f}-header.html" "${f}.new" "${f}-footer.html" > "${f}.html"
133
-	rm -f "${f}.new"
134
-	if [ -d "${fhome}" ]; then
135
-		sudo chown zeronet:zeronet "$f"
136
-	fi
163
+    f="$1"
164
+    fhome="$2"
165
+    cat "${f}-header.html" "${f}.new" "${f}-footer.html" > "${f}.html"
166
+    rm -f "${f}.new"
167
+    if [ -d "${fhome}" ]; then
168
+        sudo chown zeronet:zeronet "$f"
169
+    fi
137 170
 }
138 171
 
139 172
 function create_index {
140
-	blogaddress=$(cat /home/$MY_USERNAME/.config/zeronet/myblog)
141
-	mailaddress=$(cat /home/$MY_USERNAME/.config/zeronet/mymail)
142
-	forumaddress=$(cat /home/$MY_USERNAME/.config/zeronet/myforum)
143
-	idaddress=$(cat /home/$MY_USERNAME/.config/zeronet/myzeroid)
144
-	if [ -f $ZERONET_INDEX ]; then
145
-		sed -i "s|.*${MY_BLOG_STR}.*|  <li><a href=\"${blogaddress}\">${MY_BLOG_STR}</a></li>|g" $ZERONET_INDEX
146
-		sed -i "s|.*${MY_MAIL_STR}.*|  <li><a href=\"${mailaddress}\">${MY_MAIL_STR}</a></li>|g" $ZERONET_INDEX
147
-		sed -i "s|.*${MY_FORUM_STR}.*|  <li><a href=\"${forumaddress}\">${MY_FORUM_STR}</a></li>|g" $ZERONET_INDEX
148
-		sed -i "s|.*${MY_ID_STR}.*|  <li><a href=\"${idaddress}\">${MY_ID_STR}</a></li>|g" $ZERONET_INDEX
149
-		return
150
-	fi
151
-	echo '<!DOCTYPE html>' > $ZERONET_INDEX
152
-	echo '<html>' >> $ZERONET_INDEX
153
-	echo '<head>' >> $ZERONET_INDEX
154
-	echo "<title>$WEB_PAGE_TITLE</title>" >> $ZERONET_INDEX
155
-	echo '</head>' >> $ZERONET_INDEX
156
-	echo '<body>' >> $ZERONET_INDEX
157
-	echo "<H1>$WEB_PAGE_TITLE</H1>" >> $ZERONET_INDEX
158
-	echo '' >> $ZERONET_INDEX
159
-	echo "<H2>${YOUR_SITES_STR}</H2>" >> $ZERONET_INDEX
160
-	echo '' >> $ZERONET_INDEX
161
-	echo '<ol type="square">' >> $ZERONET_INDEX
162
-	echo "  <li><a href=\"${blogaddress}\">${MY_BLOG_STR}</a></li>" >> $ZERONET_INDEX
163
-	echo "  <li><a href=\"${mailaddress}\">${MY_MAIL_STR}</a></li>" >> $ZERONET_INDEX
164
-	echo "  <li><a href=\"${forumaddress}\">${MY_FORUM_STR}</a></li>" >> $ZERONET_INDEX
165
-	echo "  <li><a href=\"${idaddress}\">${MY_ID_STR}</a></li>" >> $ZERONET_INDEX
173
+    blogaddress=$(cat /home/$MY_USERNAME/.config/zeronet/myblog)
174
+    mailaddress=$(cat /home/$MY_USERNAME/.config/zeronet/mymail)
175
+    forumaddress=$(cat /home/$MY_USERNAME/.config/zeronet/myforum)
176
+    idaddress=$(cat /home/$MY_USERNAME/.config/zeronet/myzeroid)
177
+    if [ -f $ZERONET_INDEX ]; then
178
+        sed -i "s|.*${MY_BLOG_STR}.*|  <li><a href=\"${blogaddress}\">${MY_BLOG_STR}</a></li>|g" $ZERONET_INDEX
179
+        sed -i "s|.*${MY_MAIL_STR}.*|  <li><a href=\"${mailaddress}\">${MY_MAIL_STR}</a></li>|g" $ZERONET_INDEX
180
+        sed -i "s|.*${MY_FORUM_STR}.*|  <li><a href=\"${forumaddress}\">${MY_FORUM_STR}</a></li>|g" $ZERONET_INDEX
181
+        sed -i "s|.*${MY_ID_STR}.*|  <li><a href=\"${idaddress}\">${MY_ID_STR}</a></li>|g" $ZERONET_INDEX
182
+        return
183
+    fi
184
+    echo '<!DOCTYPE html>' > $ZERONET_INDEX
185
+    echo '<html>' >> $ZERONET_INDEX
186
+    echo '<head>' >> $ZERONET_INDEX
187
+    echo "<title>$WEB_PAGE_TITLE</title>" >> $ZERONET_INDEX
188
+    echo '</head>' >> $ZERONET_INDEX
189
+    echo '<body>' >> $ZERONET_INDEX
190
+    echo "<H1>$WEB_PAGE_TITLE</H1>" >> $ZERONET_INDEX
191
+    echo '' >> $ZERONET_INDEX
192
+    echo "<H2>${YOUR_SITES_STR}</H2>" >> $ZERONET_INDEX
193
+    echo '' >> $ZERONET_INDEX
194
+    echo '<ol type="square">' >> $ZERONET_INDEX
195
+    echo "  <li><a href=\"${blogaddress}\">${MY_BLOG_STR}</a></li>" >> $ZERONET_INDEX
196
+    echo "  <li><a href=\"${mailaddress}\">${MY_MAIL_STR}</a></li>" >> $ZERONET_INDEX
197
+    echo "  <li><a href=\"${forumaddress}\">${MY_FORUM_STR}</a></li>" >> $ZERONET_INDEX
198
+    echo "  <li><a href=\"${idaddress}\">${MY_ID_STR}</a></li>" >> $ZERONET_INDEX
166 199
 #    echo "  <li><a href=\"http://localhost:5001/webui\">File Share</a></li>" >> $ZERONET_INDEX
167
-	echo '</ol>' >> $ZERONET_INDEX
168
-	echo '' >> $ZERONET_INDEX
169
-	echo "<H2>${ON_THE_MESH_STR}</H2>" >> $ZERONET_INDEX
170
-	echo '' >> $ZERONET_INDEX
171
-	echo '<ol type="square">' >> $ZERONET_INDEX
172
-	echo "  <li><a href=\"${BLOGS_FILE}.html\">${BLOGS_STR}</a></li>" >> $ZERONET_INDEX
173
-	echo "  <li><a href=\"${MAIL_FILE}.html\">${MAIL_STR}</a></li>" >> $ZERONET_INDEX
174
-	echo "  <li><a href=\"${FORUM_FILE}.html\">${FORA_STR}</a></li>" >> $ZERONET_INDEX
175
-	echo "  <li><a href=\"${ID_FILE}.html\">${ID_STR}</a></li>" >> $ZERONET_INDEX
176
-	echo "  <li><a href=\"${TOX_USERS_FILE}.html\">${TOX_STR}</a></li>" >> $ZERONET_INDEX
177
-	echo '</ol>' >> $ZERONET_INDEX
178
-	echo '' >> $ZERONET_INDEX
179
-	echo '</body>' >> $ZERONET_INDEX
180
-	echo '</html>' >> $ZERONET_INDEX
200
+    echo '</ol>' >> $ZERONET_INDEX
201
+    echo '' >> $ZERONET_INDEX
202
+    echo "<H2>${ON_THE_MESH_STR}</H2>" >> $ZERONET_INDEX
203
+    echo '' >> $ZERONET_INDEX
204
+    echo '<ol type="square">' >> $ZERONET_INDEX
205
+    echo "  <li><a href=\"${BLOGS_FILE}.html\">${BLOGS_STR}</a></li>" >> $ZERONET_INDEX
206
+    echo "  <li><a href=\"${MAIL_FILE}.html\">${MAIL_STR}</a></li>" >> $ZERONET_INDEX
207
+    echo "  <li><a href=\"${FORUM_FILE}.html\">${FORA_STR}</a></li>" >> $ZERONET_INDEX
208
+    echo "  <li><a href=\"${ID_FILE}.html\">${ID_STR}</a></li>" >> $ZERONET_INDEX
209
+    echo "  <li><a href=\"${TOX_USERS_FILE}.html\">${TOX_STR}</a></li>" >> $ZERONET_INDEX
210
+    echo '</ol>' >> $ZERONET_INDEX
211
+    echo '' >> $ZERONET_INDEX
212
+    echo '</body>' >> $ZERONET_INDEX
213
+    echo '</html>' >> $ZERONET_INDEX
181 214
 }
182 215
 
183 216
 function create_header {
184
-	header_file=${1}-header.html
185
-	if [ -f $header_file ]; then
186
-		return
187
-	fi
188
-	echo '<!DOCTYPE html>' > $header_file
189
-	echo '<html>' >> $header_file
190
-	echo '<head>' >> $header_file
191
-	echo "<title>$WEB_PAGE_TITLE - $2</title>" >> $header_file
192
-	echo '<meta http-equiv="refresh" content="60">' >> $header_file
193
-	echo '</head>' >> $header_file
194
-	echo '<body>' >> $header_file
195
-	echo "<H1>$2</H1>" >> $header_file
217
+    header_file=${1}-header.html
218
+    if [ -f $header_file ]; then
219
+        return
220
+    fi
221
+    echo '<!DOCTYPE html>' > $header_file
222
+    echo '<html>' >> $header_file
223
+    echo '<head>' >> $header_file
224
+    echo "<title>$WEB_PAGE_TITLE - $2</title>" >> $header_file
225
+    echo '<meta http-equiv="refresh" content="60">' >> $header_file
226
+    echo '</head>' >> $header_file
227
+    echo '<body>' >> $header_file
228
+    echo "<H1>$2</H1>" >> $header_file
196 229
 }
197 230
 
198 231
 function create_footer {
199
-	footer_file=${1}-footer.html
200
-	if [ -f $footer_file ]; then
201
-		return
202
-	fi
203
-	echo '</body>' >> $footer_file
204
-	echo '</html>' >> $footer_file
232
+    footer_file=${1}-footer.html
233
+    if [ -f $footer_file ]; then
234
+        return
235
+    fi
236
+    echo '</body>' >> $footer_file
237
+    echo '</html>' >> $footer_file
205 238
 }
206 239
 
207 240
 function avahi_extract_info {
208
-	# Create a list of bootstrap nodes
209
-	avahi-browse -atr > $TEMPFILE_BASE
210
-	cat $TEMPFILE_BASE | grep "hostname =\|address =\|port =" > $TEMPFILE
211
-	if [ ! -f $TEMPFILE ]; then
212
-		exit 1
213
-	fi
241
+    # Create a list of bootstrap nodes
242
+    avahi-browse -atr > $TEMPFILE_BASE
243
+    cat $TEMPFILE_BASE | grep "hostname =\|address =\|port =" > $TEMPFILE
244
+    if [ ! -f $TEMPFILE ]; then
245
+        exit 1
246
+    fi
214 247
 }
215 248
 
216 249
 function zeronet_detect {
217
-	if [ -f $ZERONET_CONFIG.new ]; then
218
-		rm -f $ZERONET_CONFIG.new
219
-	fi
220
-
221
-	touch $ZERONET_CONFIG.new
222
-
223
-	state=0
224
-	address=""
225
-	peer=""
226
-	tracker_ctr=0
227
-	while IFS='' read -r line || [[ -n "$line" ]]; do
228
-		if [ ${state} -eq "1" ]; then
229
-			if [[ $line == *"address ="* ]]; then
230
-				address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
231
-				tracker_url="http://$peer:$TRACKER_PORT/announce"
232
-				if ! grep -q "$tracker_url" $ZERONET_CONFIG.new; then
233
-					echo "$tracker_url" >> $ZERONET_CONFIG.new
234
-					tracker_ctr=$((tracker_ctr + 1))
235
-				fi
236
-				state=0
237
-			fi
238
-		fi
239
-		if [[ $line == *"hostname ="* ]]; then
240
-			peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
241
-			state=1
242
-		fi
243
-	done < "$TEMPFILE"
250
+    if [ -f $ZERONET_CONFIG.new ]; then
251
+        rm -f $ZERONET_CONFIG.new
252
+    fi
253
+
254
+    touch $ZERONET_CONFIG.new
255
+
256
+    state=0
257
+    address=""
258
+    peer=""
259
+    tracker_ctr=0
260
+    while IFS='' read -r line || [[ -n "$line" ]]; do
261
+        if [ ${state} -eq "1" ]; then
262
+            if [[ $line == *"address ="* ]]; then
263
+                address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
264
+                tracker_url="http://$peer:$TRACKER_PORT/announce"
265
+                if ! grep -q "$tracker_url" $ZERONET_CONFIG.new; then
266
+                    echo "$tracker_url" >> $ZERONET_CONFIG.new
267
+                    tracker_ctr=$((tracker_ctr + 1))
268
+                fi
269
+                state=0
270
+            fi
271
+        fi
272
+        if [[ $line == *"hostname ="* ]]; then
273
+            peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
274
+            state=1
275
+        fi
276
+    done < "$TEMPFILE"
244 277
 }
245 278
 
246 279
 function zeronet_detect_blog {
247
-	if [ -f $BLOGS_FILE.new ]; then
248
-		rm -f $BLOGS_FILE.new
249
-	fi
250
-
251
-	cat $TEMPFILE_BASE | grep "${ZERONET_BLOG_STR}\|hostname =\|address =\|port =\|txt =" > $TEMPFILE
252
-
253
-	state=0
254
-	address=""
255
-	peer=""
256
-	echo '<ol type="square">' >> $BLOGS_FILE.new
257
-	while IFS='' read -r line || [[ -n "$line" ]]; do
258
-		if [ ${state} -eq "3" ]; then
259
-			if [[ $line == *"txt ="* ]]; then
260
-				blog_url=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
261
-				echo "  <li><a href=${blog_url}>${peer}</a></li>" >> $BLOGS_FILE.new
262
-				state=0
263
-			fi
264
-		fi
265
-		if [ ${state} -eq "2" ]; then
266
-			if [[ $line == *"address ="* ]]; then
267
-				address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
268
-				state=3
269
-			fi
270
-		fi
271
-		if [ ${state} -eq "1" ]; then
272
-			if [[ $line == *"hostname ="* ]]; then
273
-				peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
274
-				state=2
275
-			fi
276
-		fi
277
-		if [[ $line == *"${ZERONET_BLOG_STR}"* && $line == "= "* ]]; then
278
-			state=1
279
-		fi
280
-	done < "$TEMPFILE"
281
-	echo '</ol>' >> $BLOGS_FILE.new
280
+    if [ -f $BLOGS_FILE.new ]; then
281
+        rm -f $BLOGS_FILE.new
282
+    fi
283
+
284
+    cat $TEMPFILE_BASE | grep "${ZERONET_BLOG_STR}\|hostname =\|address =\|port =\|txt =" > $TEMPFILE
285
+
286
+    state=0
287
+    address=""
288
+    peer=""
289
+    echo '<ol type="square">' >> $BLOGS_FILE.new
290
+    while IFS='' read -r line || [[ -n "$line" ]]; do
291
+        if [ ${state} -eq "3" ]; then
292
+            if [[ $line == *"txt ="* ]]; then
293
+                blog_url=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
294
+                echo "  <li><a href=${blog_url}>${peer}</a></li>" >> $BLOGS_FILE.new
295
+                state=0
296
+            fi
297
+        fi
298
+        if [ ${state} -eq "2" ]; then
299
+            if [[ $line == *"address ="* ]]; then
300
+                address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
301
+                state=3
302
+            fi
303
+        fi
304
+        if [ ${state} -eq "1" ]; then
305
+            if [[ $line == *"hostname ="* ]]; then
306
+                peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
307
+                state=2
308
+            fi
309
+        fi
310
+        if [[ $line == *"${ZERONET_BLOG_STR}"* && $line == "= "* ]]; then
311
+            state=1
312
+        fi
313
+    done < "$TEMPFILE"
314
+    echo '</ol>' >> $BLOGS_FILE.new
282 315
 }
283 316
 
284 317
 function zeronet_detect_mail {
285
-	if [ -f $MAIL_FILE.new ]; then
286
-		rm -f $MAIL_FILE.new
287
-	fi
288
-
289
-	cat $TEMPFILE_BASE | grep "${ZERONET_MAIL_STR}\|hostname =\|address =\|port =\|txt =" > $TEMPFILE
290
-
291
-	state=0
292
-	address=""
293
-	peer=""
294
-	echo '<ol type="square">' >> $MAIL_FILE.new
295
-	while IFS='' read -r line || [[ -n "$line" ]]; do
296
-		if [ ${state} -eq "3" ]; then
297
-			if [[ $line == *"txt ="* ]]; then
298
-				mail_url=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
299
-				echo "  <li><a href=${mail_url}>${peer}</a></li>" >> $MAIL_FILE.new
300
-				state=0
301
-			fi
302
-		fi
303
-		if [ ${state} -eq "2" ]; then
304
-			if [[ $line == *"address ="* ]]; then
305
-				address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
306
-				state=3
307
-			fi
308
-		fi
309
-		if [ ${state} -eq "1" ]; then
310
-			if [[ $line == *"hostname ="* ]]; then
311
-				peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
312
-				state=2
313
-			fi
314
-		fi
315
-		if [[ $line == *"${ZERONET_MAIL_STR}"* && $line == "= "* ]]; then
316
-			state=1
317
-		fi
318
-	done < "$TEMPFILE"
319
-	echo '</ol>' >> $MAIL_FILE.new
318
+    if [ -f $MAIL_FILE.new ]; then
319
+        rm -f $MAIL_FILE.new
320
+    fi
321
+
322
+    cat $TEMPFILE_BASE | grep "${ZERONET_MAIL_STR}\|hostname =\|address =\|port =\|txt =" > $TEMPFILE
323
+
324
+    state=0
325
+    address=""
326
+    peer=""
327
+    echo '<ol type="square">' >> $MAIL_FILE.new
328
+    while IFS='' read -r line || [[ -n "$line" ]]; do
329
+        if [ ${state} -eq "3" ]; then
330
+            if [[ $line == *"txt ="* ]]; then
331
+                mail_url=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
332
+                echo "  <li><a href=${mail_url}>${peer}</a></li>" >> $MAIL_FILE.new
333
+                state=0
334
+            fi
335
+        fi
336
+        if [ ${state} -eq "2" ]; then
337
+            if [[ $line == *"address ="* ]]; then
338
+                address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
339
+                state=3
340
+            fi
341
+        fi
342
+        if [ ${state} -eq "1" ]; then
343
+            if [[ $line == *"hostname ="* ]]; then
344
+                peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
345
+                state=2
346
+            fi
347
+        fi
348
+        if [[ $line == *"${ZERONET_MAIL_STR}"* && $line == "= "* ]]; then
349
+            state=1
350
+        fi
351
+    done < "$TEMPFILE"
352
+    echo '</ol>' >> $MAIL_FILE.new
320 353
 }
321 354
 
322 355
 function zeronet_detect_fora {
323
-	if [ -f $FORUM_FILE.new ]; then
324
-		rm -f $FORUM_FILE.new
325
-	fi
326
-
327
-	cat $TEMPFILE_BASE | grep "${ZERONET_FORUM_STR}\|hostname =\|address =\|port =\|txt =" > $TEMPFILE
328
-
329
-	state=0
330
-	address=""
331
-	peer=""
332
-	echo '<ol type="square">' >> $FORUM_FILE.new
333
-	while IFS='' read -r line || [[ -n "$line" ]]; do
334
-		if [ ${state} -eq "3" ]; then
335
-			if [[ $line == *"txt ="* ]]; then
336
-				forum_url=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
337
-				echo "  <li><a href=${forum_url}>${peer}</a></li>" >> $FORUM_FILE.new
338
-				state=0
339
-			fi
340
-		fi
341
-		if [ ${state} -eq "2" ]; then
342
-			if [[ $line == *"address ="* ]]; then
343
-				address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
344
-				state=3
345
-			fi
346
-		fi
347
-		if [ ${state} -eq "1" ]; then
348
-			if [[ $line == *"hostname ="* ]]; then
349
-				peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
350
-				state=2
351
-			fi
352
-		fi
353
-		if [[ $line == *"${ZERONET_FORUM_STR}"* && $line == "= "* ]]; then
354
-			state=1
355
-		fi
356
-	done < "$TEMPFILE"
357
-	echo '<ol>' >> $FORUM_FILE.new
356
+    if [ -f $FORUM_FILE.new ]; then
357
+        rm -f $FORUM_FILE.new
358
+    fi
359
+
360
+    cat $TEMPFILE_BASE | grep "${ZERONET_FORUM_STR}\|hostname =\|address =\|port =\|txt =" > $TEMPFILE
361
+
362
+    state=0
363
+    address=""
364
+    peer=""
365
+    echo '<ol type="square">' >> $FORUM_FILE.new
366
+    while IFS='' read -r line || [[ -n "$line" ]]; do
367
+        if [ ${state} -eq "3" ]; then
368
+            if [[ $line == *"txt ="* ]]; then
369
+                forum_url=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
370
+                echo "  <li><a href=${forum_url}>${peer}</a></li>" >> $FORUM_FILE.new
371
+                state=0
372
+            fi
373
+        fi
374
+        if [ ${state} -eq "2" ]; then
375
+            if [[ $line == *"address ="* ]]; then
376
+                address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
377
+                state=3
378
+            fi
379
+        fi
380
+        if [ ${state} -eq "1" ]; then
381
+            if [[ $line == *"hostname ="* ]]; then
382
+                peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
383
+                state=2
384
+            fi
385
+        fi
386
+        if [[ $line == *"${ZERONET_FORUM_STR}"* && $line == "= "* ]]; then
387
+            state=1
388
+        fi
389
+    done < "$TEMPFILE"
390
+    echo '<ol>' >> $FORUM_FILE.new
358 391
 }
359 392
 
360 393
 function zeronet_detect_id {
361
-	if [ -f $ID_FILE.new ]; then
362
-		rm -f $ID_FILE.new
363
-	fi
364
-
365
-	cat $TEMPFILE_BASE | grep "${ZERONET_ID_STR}\|hostname =\|address =\|port =\|txt =" > $TEMPFILE
366
-
367
-	state=0
368
-	address=""
369
-	peer=""
370
-	echo '<ol type="square">' >> $ID_FILE.new
371
-	while IFS='' read -r line || [[ -n "$line" ]]; do
372
-		if [ ${state} -eq "3" ]; then
373
-			if [[ $line == *"txt ="* ]]; then
374
-				id_url=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
375
-				echo "  <li><a href=${id_url}>${peer}</a></li>" >> $ID_FILE.new
376
-				state=0
377
-			fi
378
-		fi
379
-		if [ ${state} -eq "2" ]; then
380
-			if [[ $line == *"address ="* ]]; then
381
-				address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
382
-				state=3
383
-			fi
384
-		fi
385
-		if [ ${state} -eq "1" ]; then
386
-			if [[ $line == *"hostname ="* ]]; then
387
-				peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
388
-				state=2
389
-			fi
390
-		fi
391
-		if [[ $line == *"${ZERONET_ID_STR}"* && $line == "= "* ]]; then
392
-			state=1
393
-		fi
394
-	done < "$TEMPFILE"
395
-	echo '</ol>' >> $ID_FILE.new
394
+    if [ -f $ID_FILE.new ]; then
395
+        rm -f $ID_FILE.new
396
+    fi
397
+
398
+    cat $TEMPFILE_BASE | grep "${ZERONET_ID_STR}\|hostname =\|address =\|port =\|txt =" > $TEMPFILE
399
+
400
+    state=0
401
+    address=""
402
+    peer=""
403
+    echo '<ol type="square">' >> $ID_FILE.new
404
+    while IFS='' read -r line || [[ -n "$line" ]]; do
405
+        if [ ${state} -eq "3" ]; then
406
+            if [[ $line == *"txt ="* ]]; then
407
+                id_url=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
408
+                echo "  <li><a href=${id_url}>${peer}</a></li>" >> $ID_FILE.new
409
+                state=0
410
+            fi
411
+        fi
412
+        if [ ${state} -eq "2" ]; then
413
+            if [[ $line == *"address ="* ]]; then
414
+                address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
415
+                state=3
416
+            fi
417
+        fi
418
+        if [ ${state} -eq "1" ]; then
419
+            if [[ $line == *"hostname ="* ]]; then
420
+                peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
421
+                state=2
422
+            fi
423
+        fi
424
+        if [[ $line == *"${ZERONET_ID_STR}"* && $line == "= "* ]]; then
425
+            state=1
426
+        fi
427
+    done < "$TEMPFILE"
428
+    echo '</ol>' >> $ID_FILE.new
396 429
 }
397 430
 
398 431
 function avahi_remove_info {
399
-	rm -f $TEMPFILE_BASE
400
-	rm -f $TEMPFILE
432
+    rm -f $TEMPFILE_BASE
433
+    rm -f $TEMPFILE
401 434
 }
402 435
 
403 436
 function zeronet_update_config {
404
-	if [ ${tracker_ctr} -gt "0" ]; then
405
-		cp -f $ZERONET_CONFIG.new $ZERONET_CONFIG
406
-	else
407
-		if [ -f $ZERONET_CONFIG ]; then
408
-			rm -f $ZERONET_CONFIG
409
-		fi
410
-	fi
411
-	rm -f $ZERONET_CONFIG.new
412
-	if [ -d $ZERONET_INSTALL ]; then
413
-		sudo chown zeronet:zeronet $ZERONET_CONFIG
414
-	fi
437
+    if [ ${tracker_ctr} -gt "0" ]; then
438
+        cp -f $ZERONET_CONFIG.new $ZERONET_CONFIG
439
+    else
440
+        if [ -f $ZERONET_CONFIG ]; then
441
+            rm -f $ZERONET_CONFIG
442
+        fi
443
+    fi
444
+    rm -f $ZERONET_CONFIG.new
445
+    if [ -d $ZERONET_INSTALL ]; then
446
+        sudo chown zeronet:zeronet $ZERONET_CONFIG
447
+    fi
415 448
 }
416 449
 
417 450
 if [ ! -d /etc/avahi ]; then
418
-	exit 0
451
+    exit 0
419 452
 fi
420 453
 
421 454
 avahi_extract_info