2015-11-19 97 views
-1

我正在开发一个应用程序,用户根据用户搜索条件获取人员列表。从列表中向用户呈现当前正在搜索组的用户列表。我想让用户能够向列表中的选定用户发送邀请,从而在2到6个用户的任何地方组成一个组。我不确定为了实现这一目标需要研究的地点或内容。同样,一旦邀请被发送并且用户在一个组中,我想要为他们提供一个功能来与基本聊天功能进行通信。如何发送邀请加入我的应用程序内组?

因此,我想提供一些建议,以寻求R & D的功能,以便在我的应用程序上提供此功能。该应用程序将由托管的MySQL数据库提供支持。

编辑

只是为了澄清多一点,这是基本的流程,我想象中的应用

  1. 用户看到用户的列表,每个表项有一个邀请按钮

  2. 用户点击邀请按钮

  3. 的用户点击收到的通知的邀请,并且被允许或者接受的下降

  4. 如果接受用户的投入将被存储在服务器上的一组

  5. 其他用户将能够加入该群

    该组中
  6. 用户可以邀请其他用户现有的组

  7. 所有组中的用户可以通过专用于他们的小组聊天交流。

我只需要知道如何获得发送邀请和接受或拒绝邀请开始。使用哪些技术?

回答

0

我认为你必须建立一个后端服务。一种方法可能是用Node JS构建一个Rest Api。你可以定义像邀请用户这样的路线,它需要一个用户ID和组ID。在路由功能中,您可以将组ID添加到用户ID后面的用户的邀请中。其他路线可以是接受邀请,您可以在其中发送用户ID和组ID。在该功能中,您检查用户是否有该组的邀请,以及他是否将他添加到组中。但这只是近千种可能方式的建议。你也可以在你的应用程序中添加这些功能。而不是使用我上面提到的API函数作为API路径,直接让它们在应用程序中。但是,如果数据库中存在新的邀请记录,那么您必须通知用户可能使用推送通知。但我会建议建立一个小服务器。

可以看看这里一个基本的休息mSQL的节点JS教程https://codeforgeek.com/2015/01/nodejs-mysql-tutorial/你会在这里这样定义

function inviteUser(req,res) { 

pool.getConnection(function(err,connection){ 
    if (err) { 
     connection.release(); 
     res.json({"code" : 100, "status" : "Error in connection database"}); 
     return; 
    } 

    console.log('connected as id ' + connection.threadId); 

    connection.query("select req.body.userId from user",function(err,rows){ 
     connection.release(); 
     if(!err) { 
      //ADD Group id to the user access the id with req.body.groupId 
      res.json(rows); 
     }   
    }); 

    connection.on('error', function(err) {  
      res.json({"code" : 100, "status" : "Error in connection database"}); 
      return;  
    }); 
    }); 
} 

function acceptInvitation(req,res){ 

pool.getConnection(function(err,connection){ 
    if (err) { 
     connection.release(); 
     res.json({"code" : 100, "status" : "Error in connection database"}); 
     return; 
    } 

    console.log('connected as id ' + connection.threadId); 

    connection.query("select req.body.groupId from groups",function(err,rows){ 
     connection.release(); 
     if(!err) { 
      //ADD user id to the group access the id with req.body.userId 
      res.json(rows); 
     }   
    }); 

    connection.on('error', function(err) {  
      res.json({"code" : 100, "status" : "Error in connection database"}); 
      return;  
    }); 
    }); 
} 
} 

app.get("https://stackoverflow.com/users/invite",function(req,res){- 
    inviteUser(req,res); 
}); 

app.get("https://stackoverflow.com/users/accept",function(req,res){- 
    acceptInvitation(req,res); 
}); 

路线从应用程序,你会在你的服务器的URL发送HTTP请求像http://localhost:8080/users/invite与{用户id的身体: xxxxx,groupId:xxxxx}

+0

我很感谢你的回答,它给了我一些研究。我一直在研究一两天,而不是提出任何看起来可行的事情。 –

+0

我加了一些提示可能会帮助你,对不起我的英文不好 – Sprotte

+0

不用担心我很欣赏帮助 –

相关问题