return;
}
+ mesh->stop();
+
if(!mesh->join(arg))
fprintf(stderr, "Could not join using invitation: %s\n", meshlink::strerror());
else
fprintf(stderr, "Invitation accepted!\n");
+
+ if(!mesh->start()) {
+ fprintf(stderr, "Could not restart MeshLink: %s\n", meshlink::strerror());
+ exit(1);
+ }
} else if(!strcasecmp(buf, "kick")) {
if(!arg) {
fprintf(stderr, "/kick requires an argument!\n");
if(argc > 2)
nick = argv[2];
- ChatMesh* mesh = meshlink::open<ChatMesh>(confbase, nick, "chatpp");
+ ChatMesh mesh;
+ mesh.open(confbase, nick, "chatpp", DEV_CLASS_STATIONARY);
- if(!mesh) {
+ if(!mesh.isOpen()) {
fprintf(stderr, "Could not open MeshLink: %s\n", meshlink::strerror());
return 1;
}
- if(!mesh->start()) {
+ if(!mesh.start()) {
fprintf(stderr, "Could not start MeshLink: %s\n", meshlink::strerror());
return 1;
}
printf("Chat started.\nType /help for a list of commands.\n");
while(fgets(buf, sizeof buf, stdin))
- parse_input(mesh, buf);
+ parse_input(&mesh, buf);
printf("Chat stopping.\n");
- mesh->stop();
- meshlink::close(mesh);
+ mesh.stop();
+ mesh.close();
return 0;
}