User resources

The twister-users group is the official place to to share problems, experiences, ideas and ask general user’s questions about twister. Non-gmail users may join by sending email to twister-users+subscribe@googlegroups.com. There is also an unofficial #twister Freenode IRC channel.

Latest twister news in Twitter: https://twitter.com/TwisterPtoP (Thanks Snarkly for managing the Twitter account!)

Community twister wiki http://wiki.twister.net.co (Thanks jp.fox!)

Workflow for running twister for the first time

  1. Download and install twisterd and twister-html.
  2. Open your browser to access the javascript user interface.
  3. Go to the Network tab and wait until the daemon downloads the entire blockchain.
  4. Go to the Login tab and create a new user.
  5. Wait a few seconds for the daemon to calculate the Proof-Of-Work to propagate your registration.
  6. You’ll be redirected to the Edit Profile tab. Choose your avatar, name, location etc.
  7. Wait a few minutes until your registration is accepted into a new block. The “Save” button will be disabled in the meantime.
  8. Your account is ready. Search users to follow, send new posts etc.

Compilation problems

  • Most problems compiling twister are common to Bitcoin. Therefore, your first bet when facing compilation problems should be googling the error message. Chances are somebody already faced the same problem.
  • Error compiling with an older Berkeley DB version (older than 4.8):
    In file included from db.cpp:7:0:
    db.h: In member function ‘bool CDB::Exists(const K&)’:
    db.h:208:24: error: ‘class Db’ has no member named ‘exists’

    Fix: Update your libdb++-dev or libdb-4_8-devel (package name is distribution specific).
  • Fedora compilation will fail because RedHat removed Elliptic Curve support from OpenSSL lib. Even if compilation succeeds user is likely to face the following error message:
    twisterd: key.cpp:148: {anonymous}::CECKey::CECKey(): Assertion `pkey != __null' failed.
    Fix: There are yum repos with EC-enabled openssl builds on the net, e.g., the bitcoin repos at ringingliberty.com.
  • Configure error detecting boost:
    checking for boostlib >= 1.44... yes
    checking whether the Boost::System library is available... yes
    configure: error: Could not find a version of the library!

    Fix: Install all boost development packages and look for multiple versions of the same libraries. Under Ubuntu 13.10 a known problem is the parallel installation of libboost-iostreams1.53.0 while standard boost development packages are version 1.49. This causes the automatic boost library detection to fail. Try specifying the directory manually with --with-boost=/usr/lib

  • Windows compilation: https://github.com/miguelfreitas/twister-core/wiki/Compiling-for-Windows and https://github.com/miguelfreitas/twister-core/wiki/Build-native-Windows-client-using-Gitian
  • Please submit compilation and core related bug reports here.

General issues

  • User creation may take some time on slow computers due to the “proof-of-work” required. This is normal and it shouldn’t take more than 5 minutes in worst case. Then, after user is created, the browser is redirected to the profile configuration screen. At this point, however, the last phase of user registration may take much more time to complete because the transaction must be accepted into the block chain of the entire network. On average, a new block is generated every 10 minutes but the exact time cannot be predicted, so it might take anything from like one minute to half an hour. Before this new block is produced, other peers will refuse to accept the profile “save” action or any new posts. Please be patient.
  • Usually users are redirected to the Network status page whenever twisterd experiences connectivity problems. However, if one insists on creating a new username with network down, this may result in an incomplete username creation, that is, the key pair is created in local wallet but not sent to other peers. Currently there is no UI option to fix this. The solution is to use the following command to force transaction propagation:
    ./twisterd sendnewusertransaction my_user_name
  • Backup your private key. Backup your private key. Backup your private key. You can do this either by copying the 52-character secret or the twisterwallet.dat file.
  • Support for encrypted wallets still exists in code base, but this feature has never been tested.
  • Private messages are saved to the file named user_data. Because the messages you send are only encrypted with the recipient’s key, you won’t see these messages in other computers sharing the same account. Unless, of course, this file is copied to the other computer.
  • If file user_data is lost, both sent and received private messages will disappear from the interface. It is possible to force twisterd to reprocess the received messages from all followed users and populate this file again with plain-text (decrypted) messages with the command:
    ./twisterd rescandirectmsgs my_user_name
  • Network status page is your friend, use it to try to debug connectivity problems. twister needs both registration (blockchain) and DHT networks to have reachable nodes and will try to populate IP address from one to the other. The bootstrap is provided by three DNS servers. Alternatively, known peers (other computers running twister) may also be used for bootstrapping purposes.
  • In case Network status page still reports “Connections: 0″ after a while try manually re-adding DNS seeds “seed.twister.net.co”, “seed2.twister.net.co” or “seed3.twister.net.co”.
  • Besides block synchronization which may be checked at Network page, torrent download of posts may prevent your timeline from displaying correctly. You may check posts download status at the Following page.
  • While best efforts have been made trying to fix torrent bugs caused by twister’s modifications (basically we have a “growing torrent” file now) it seems that some corner case might still be problematic, preventing proper synchronization. Symptom: you compare two computers running twister and they report different number of pieces for a given user in the “Following” page. Then you make sure you have good network connectivity but your posts still don’t propagate. Ok, please be patient because sooner or later we will fix this! Restarting the deamon may help (or you may also try to debug this if you are a programmer).
  • A bug has been seen (and hopefully fixed) which caused ~/.twister/debug.log to grow ridiculously large (like 20GB). If you miss your free space you may want to check this file size. During initialization twisterd should shrink debug.log whenever it gets larger than 10MB.
  • Followers numbers are unreliable/not working. Actually there is no easy of figuring out who follow you except by checking all users. It should be possible, however, to find how many users are connected to your swarm (a sort of “online followers”). I tried using certain internal variable of libtorrent expecting to obtain this information but unfortunately I was wrong. This is still an open issue.
  • Sometimes the block chain database may get corrupt, preventing twisterd from starting. You should first try the -reindex flag to see if it recovers. If it still refused to start, the solution is to completely erase the block database. So, unless you feel attached to it by some reason, erase the directories ~/.twister/blocks and ~/.twister/chainstate and let twisterd download it all over again from other peers.
  • Please submit HTML user interface related bug reports here.

Android known issues

  • Remember to backup your /sdcard/Android/data/com.mfreitas.twister/files/twisterwallet.dat! Since this is not the final location for the wallet file you may lose your private key with upcoming app updates. Hint: Copy-pasting your secret key to Android Memo is also quite handy.
  • Android porting of html UI is quite hacky. Not all features work. Prefer the Mobile version.
  • When opening twister simple web app, an error loading home url is shown. Wait a few seconds and try again (the daemon is still initializing).
  • Android browser seems to hide the upper-left of menu bar in Desktop version. You may try using a different browser instead, like Chrome. Or use Mobile version instead.
  • Android 2.x browser doesn’t support HTML5 FileReader so configuring avatar image is not possible. The workaround is to set your profile from PC.
  • When creating a new user, the Android browser may report that the AJAX request has timed out. This is not really a problem because the processing will still be performed by the daemon even if the browser aborts. Wait a few minutes and reload the interface, the user will probably have been created already.
  • Android simpleweb app’s CPU usage is not high, but memory usage of both the daemon and webview may render it pretty slugguish in low-end phones. The definitive twister android client needs to be native app (Java).
  • Please submit android related bug reports here.

Windows known issues

  • windows users are reporting problems to bootstrap the network (no connections). Try to manually add peer from one of the following seeder (try both “add peer” and “add dns”): seed.twister.net.co / seed2.twister.net.co / seed3.twister.net.co / dnsseed.gombadi.com
5 comments on “User resources
  1. unnamed says:

    First of all, thanks for the good work. You’ve created something very promising.

    I have problem making it work on Windows. I checked the documentations and still have no clue.

    My problem is that http://127.0.0.1:28332/index.html shows nothing. I’ve already tried using twister-html.

    The documentations seem to be written for those with relevant experience. Please consider spending some time in writing more detailed instructions. At least, a detailed step-by-step installation and running-for-the-first time tutorial is needed. The existing ‘Workflow for running twister for the first time’ is far from good enough. The first two steps are too unclear so that I couldn’t even get to step 3.

    I think all documentations need more work.

    Please consider it. Thanks.

    • Aran says:

      I’m having this same problem too, just a blank screen. The debug log says that .twister/html/home.html is not found and indeed there is no html dir at all in .twister so I think something has gone wrong in the installation somewhere.

  2. propagare says:

    Twister has a tremendous potential! Thanks for your effort to give us your prima movens as a gift!

    There is maybe a bug fmpov when I try to login with a numeric only username (“Username undefined, login required.”)

    Warm regards,
    propagare

  3. bitcoind says:

    Respberry Pi install twister
    以Root身份运行,如果是Respberry是否,后面运行程序要加sudo,产生的文件要chmod 777 文件名
    安装支持库
    apt-get update
    apt-get install git autoconf libtool build-essential libboost-all-dev libssl-dev libdb++-dev libminiupnpc-dev
    注意:
    libdb至少是4.8版,全部的包
    libboost-all-dev, miniupnpc
    OpenSSL 至少 1.0+ 版本

    下载twister
    cd ~/
    git clone https://github.com/miguelfreitas/twister-core.git
    git clone https://github.com/miguelfreitas/twister-html.git
    配置twisterd
    cd twister-core
    ./bootstrap.sh
    ./configure
    开始编译libtorrent
    cd twister/libtorrent
    ./bootstrap.sh
    ./configure –enable-logging –enable-debug –enable-dht
    make
    cd ..
    开始编译twisterd
    cd src
    make -f makefile.unix
    建立配置文件
    mkdir ~/.twister
    echo -e “rpcuser=user\nrpcpassword=pwd” > ~/.twister/twister.conf
    ln -s /root/twister-html ~/.twister/html
    启动网页浏览器,打开twister客户端
    http://user:pwd@192.168.3.170:28332/home.html
    网络状态页面–强制连接到节点和获取节点列表的DNS,分别添加各二次
    tuiku.me
    wyc.tuiku.me
    备份用户的私钥
    ./twisterd dumpprivkey 用户名 > my-key.txt
    ~/.twister/user_data
    启动运行:
    nano /etc/rc.local
    exit前添加
    /root/twisterd 还没好
    手动运行 root目录下
    ./twisterd
    最后给出个编译好的,去掉调试信息的twisterd文件:
    http://yunpan.cn/QaNZbxsw4Dh4L 访问密码 51e4
    方法:root身份,root目录
    1、安装支持库
    2、拷贝twisterd到root
    3、reboot
    搞定

  4. pomelo says:

    none of “seed.twister.net.co”, “seed2.twister.net.co” or “seed3.twister.net.co” “tuiku.me” can be connected in mainland China.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>