Send message made.
This commit is contained in:
		@@ -23,6 +23,9 @@
 | 
			
		||||
 | 
			
		||||
std::map<std::string, struct channel_info> channels;
 | 
			
		||||
 | 
			
		||||
static std::mt19937_64 rand_dev {dht::crypto::random_device{}()};
 | 
			
		||||
static std::uniform_int_distribution<dht::Value::Id> rand_id;
 | 
			
		||||
 | 
			
		||||
int NeoComm_join_channel(const char *channel_name) {
 | 
			
		||||
	if(not node.isRunning())
 | 
			
		||||
	{
 | 
			
		||||
@@ -94,3 +97,19 @@ struct message *NeoComm_get_next_message(const char *channel_name) {
 | 
			
		||||
void NeoComm_free_message(struct message *msg) {
 | 
			
		||||
	free(msg);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int NeoComm_send_message(const char *channel_name, const char *message) {
 | 
			
		||||
	const dht::InfoHash chan_hash = channels[channel_name].hash;
 | 
			
		||||
	const time_t now = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());
 | 
			
		||||
 | 
			
		||||
	if(channels.find(channel_name) == channels.end())
 | 
			
		||||
	{
 | 
			
		||||
		add_error("Not connected to channel");
 | 
			
		||||
		return 0;
 | 
			
		||||
	}
 | 
			
		||||
	node.putSigned(chan_hash, dht::ImMessage(rand_id(rand_dev), message, now), [](bool sent) {
 | 
			
		||||
			// TODO: Figure out what to do here for failed messages.
 | 
			
		||||
		});
 | 
			
		||||
 | 
			
		||||
	return 1;
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user