Bläddra i källkod

Parse avahi ipfs peers

Bob Mottram 9 år sedan
förälder
incheckning
d6e4a5159b
1 ändrade filer med 49 tillägg och 0 borttagningar
  1. 49
    0
      src/zeronetavahi

+ 49
- 0
src/zeronetavahi Visa fil

47
 
47
 
48
 BLOGS_FILE=$ZERONET_INSTALL/freedombone-blogs
48
 BLOGS_FILE=$ZERONET_INSTALL/freedombone-blogs
49
 FORUM_FILE=$ZERONET_INSTALL/freedombone-fora
49
 FORUM_FILE=$ZERONET_INSTALL/freedombone-fora
50
+IPFS_FILE=$ZERONET_INSTALL/freedombone-ipfs
50
 TOX_USERS_FILE=$ZERONET_INSTALL/freedombone-tox-users
51
 TOX_USERS_FILE=$ZERONET_INSTALL/freedombone-tox-users
51
 ZERONET_INDEX=/home/$MY_USERNAME/mesh.html
52
 ZERONET_INDEX=/home/$MY_USERNAME/mesh.html
52
 ZERONET_CONFIG=$ZERONET_INSTALL/bootstrap
53
 ZERONET_CONFIG=$ZERONET_INSTALL/bootstrap
78
     echo "  <li><a href=\"${BLOGS_FILE}.html\">Blogs</a></li>" >> $ZERONET_INDEX
79
     echo "  <li><a href=\"${BLOGS_FILE}.html\">Blogs</a></li>" >> $ZERONET_INDEX
79
     echo "  <li><a href=\"${FORUM_FILE}.html\">Fora</a></li>" >> $ZERONET_INDEX
80
     echo "  <li><a href=\"${FORUM_FILE}.html\">Fora</a></li>" >> $ZERONET_INDEX
80
     echo "  <li><a href=\"${TOX_USERS_FILE}.html\">Tox Users</a></li>" >> $ZERONET_INDEX
81
     echo "  <li><a href=\"${TOX_USERS_FILE}.html\">Tox Users</a></li>" >> $ZERONET_INDEX
82
+    echo "  <li><a href=\"${IPFS_FILE}.html\">File shares</a></li>" >> $ZERONET_INDEX
81
     echo '</ol>' >> $ZERONET_INDEX
83
     echo '</ol>' >> $ZERONET_INDEX
82
     echo '' >> $ZERONET_INDEX
84
     echo '' >> $ZERONET_INDEX
83
     echo '</body>' >> $ZERONET_INDEX
85
     echo '</body>' >> $ZERONET_INDEX
223
 done < "$TEMPFILE"
225
 done < "$TEMPFILE"
224
 echo '<ol>' >> $FORUM_FILE.new
226
 echo '<ol>' >> $FORUM_FILE.new
225
 
227
 
228
+
229
+# detect fora in the mesh
230
+if [ -f $IPFS_FILE.new ]; then
231
+    rm -f $IPFS_FILE.new
232
+fi
233
+
234
+cat $TEMPFILE_BASE | grep "IPFS\|hostname =\|address =\|port =\|txt =" > $TEMPFILE
235
+
236
+state=0
237
+address=""
238
+peer=""
239
+echo '<ol type="square">' >> $IPFS_FILE.new
240
+while IFS='' read -r line || [[ -n "$line" ]]; do
241
+    if [ ${state} -eq "3" ]; then
242
+        if [[ $line == *"txt ="* ]]; then
243
+            ipfs_peer_id=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
244
+            echo "  <li><a href=http://localhost:5001/ipfs/${ipfs_peer_id}>${peer}</a></li>" >> $IPFS_FILE.new
245
+            state=0
246
+        fi
247
+    fi
248
+    if [ ${state} -eq "2" ]; then
249
+        if [[ $line == *"address ="* ]]; then
250
+            address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
251
+            state=3
252
+        fi
253
+    fi
254
+    if [ ${state} -eq "1" ]; then
255
+        if [[ $line == *"hostname ="* ]]; then
256
+            peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
257
+            state=2
258
+        fi
259
+    fi
260
+    if [[ $line == *"IPFS"* && $line == "= "* ]]; then
261
+        state=1
262
+    fi
263
+done < "$TEMPFILE"
264
+echo '<ol>' >> $FORUM_FILE.new
265
+
266
+
226
 # detect Tox users
267
 # detect Tox users
227
 lstox > $TEMPFILE
268
 lstox > $TEMPFILE
228
 toxctr=0
269
 toxctr=0
258
 create_header $BLOGS_FILE "Blogs"
299
 create_header $BLOGS_FILE "Blogs"
259
 create_header $FORUM_FILE "Fora"
300
 create_header $FORUM_FILE "Fora"
260
 create_header $TOX_USERS_FILE "Tox Users"
301
 create_header $TOX_USERS_FILE "Tox Users"
302
+create_header $IPFS_FILE "File Shares"
261
 create_footer $BLOGS_FILE
303
 create_footer $BLOGS_FILE
262
 create_footer $FORUM_FILE
304
 create_footer $FORUM_FILE
263
 create_footer $TOX_USERS_FILE
305
 create_footer $TOX_USERS_FILE
286
     sudo chown zeronet:zeronet $TOX_USERS_FILE
328
     sudo chown zeronet:zeronet $TOX_USERS_FILE
287
 fi
329
 fi
288
 
330
 
331
+# create a web page showing the file shares
332
+cat ${IPFS_FILE}-header.html ${IPFS_FILE}.new ${IPFS_FILE}-footer.html > ${IPFS_FILE}.html
333
+rm -f ${IPFS_FILE}.new
334
+if [ -d $ZERONET_USER_HOME ]; then
335
+    sudo chown zeronet:zeronet $IPFS_FILE
336
+fi
337
+
289
 exit 0
338
 exit 0