Yet Another JAbber implementation (xmpp) in go Archived: We help maintaince gosrc.io/xmpp @ https://github.com/FluuxIO/go-xmpp, now.
				
			
			
		| 
				
					
						 | 
			||
|---|---|---|
| .ci | ||
| bot | ||
| client | ||
| cmd | ||
| database | ||
| model | ||
| xmpp | ||
| .drone.yml | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| .test-coverage | ||
| LICENSE | ||
| README.md | ||
| circle.yml | ||
| main.go | ||
| yaja-bot_example.conf | ||
| yaja-tester_example.conf | ||
		
			
				
				README.md
			
		
		
			
			
		
	
	yaja (Yet Another JAbber implementation)
Archived/Unmaintained
We help maintain gosrc.io/xmpp @ https://github.com/FluuxIO/go-xmpp, now.
Features
- XMPP Library (first version - PR are welcome)
 - Client Library (WIP)
- Stream: TLS Required
- SASL-Auth (PLAIN, DIGEST-MD5)
 
 - Read & Decode (recv xml)
 - Send (send xml)
 - No OTR (never implemented -> nowadays OMEMO or PGP preferred)
 - No OMEMO support (not implemented by me: library only for bots and testing)
 
 - Stream: TLS Required
 - Client (planned)
 - Daemon
- Tester (based on Client Library)
- Bidirected Messaging
 - Check IPv4 & IPv6
 - TLS Version
 
 - Server (maybe broken, planned)
- get certificate by lets encrypt
 - registration (for every possible TLS domain)
 
 
 - Tester (based on Client Library)
 
Library
XMPP
all implementation of all comman (RFCs and XEPs) xml element
Version
- RFC 6120 (XMPP - Core)
 - RFC 6121 (XMPP - Instant Messaging and Presence)
 - XEP-0030: Service Discovery
 - XEP-0049: Private XML Storage
 - XEP-0092: Software Version
 - XEP-0138: Stream Compression
 - XEP-0199: XMPP Ping
 
Client
Planned
- auto decoding of XML (with some auto answer e.g. ping)
 - SendRecv to get answer of a request
 - Register
 
Get yaja
Download
Latest Build binary from ci here:
Download All (with config example)
Run
A small standalone command line round about jabber (e.g tester WIP: client & server)
Usage:
  yaja [command]
Available Commands:
  daemon      daemon of yaja
  help        Help about any command
Flags:
  -h, --help   help for yaja
Use "yaja [command] --help" for more information about a command.
Daemons
daemon of yaja
Usage:
  yaja daemon [command]
Available Commands:
  server      runs xmpp server
  tester      runs xmpp tester server
Flags:
  -h, --help   help for daemon
Use "yaja daemon [command] --help" for more information about a command.
Tester
Website for displaying: genofire/yaja-tester-viewer
(dirty and based on Freifunk Meshviewer)
Demo: tester.chat.sum7.eu
runs xmpp tester server
Usage:
  yaja daemon tester [flags]
Examples:
yaja daemon tester -c /etc/yaja.conf
Flags:
  -c, --config string   path to configuration file (default "yaja-tester.conf")
  -h, --help            help for tester
Features
- notification of disconnect by server (domain)
- manage by bot command 
admin (add|del) <JID>andadmin list) 
 - manage by bot command 
 - auto accept subscription by every user to every bot
 pingtopongby every user to every bot (for self check)
Planned
- improve chat bot implementation
 - improve notification (add my self, not only other by admins)
 - add new accounts/server
 - other checks, maybe like running - source-code
- software and version of xmpp servers
 
 
Inspiration by
Sorry i did not like Java on my server
- ServerStatus of iNPUTmice: running - source-code
 
Server
runs xmpp server
Usage:
  yaja daemon server [flags]
Examples:
yaja daemon server -c /etc/yaja.conf
Flags:
  -c, --config string   path to configuration file (default "yaja-server.conf")
  -h, --help            help for server