hyudai28 / ft_irc

0 stars 0 forks source link

Mini_irc #27

Open velvelhype opened 1 year ago

velvelhype commented 1 year ago

ちっちゃいIRCをつくろう

NICK USER JOIN CHANNEL PRIVMSG で会話することを目標

まずは仕様をつくる

実際にどんなのが飛んでくる:

NICK kamori が飛んでくるので、 新規ユーザーのnickを登録する

USER kamori 0 * kamori ユーザーは"kamori"というニックネームで"kamori"をリアルネームとして解釈する

JOIN #ChannelEX チャンネルに入ったときにチャンネル情報が返ってきて、 JOINメッセージも送られてくる RPL _TOPICとRPL _NAMREPLY

PARSEってどこでやんの? 渡された時やんの?

PRIVMSG PRIVMSG #ChannelEX :yes I'm receiving it ! が飛んでくる

Comment

Issueがバグの場合、以下の内容を簡潔に書く。
新規実装の場合は何を実装したいのか 

クライアントからコマンドを受け取った際のエラー処理

問題の内容・実装箇所

複数の問題をひとつのIssueに含めない。面倒だけど問題の数だけIssueを発行する。

具体的にどこのファイルから関数が飛んで実装されるのか、またはどこのファイルに実装するのか

velvelhype commented 1 year ago

まずはパーサー: どんな動きができればいい?

NICK kamori cmd: NICK prefix: なし args: kamoriに

USER kamori 0 kamori を cmd: USER prefix: なし args: kamori 0 kamori

JOIN #ChannelEX を cmd: JOIN prefix:  args: #ChannelEX に

PRIVMSG #ChannelEX :yes I'm receiving it ! を cmd: PRIVMSG prefix:  args: : #ChannelEX yes I'm receiving it ! にできれば良い?

prefixとargsがよくわかってない気がする〜 prefix = servername / ( nickname [ [ "!" user ] "@" host ] ) なのでチャンネル名は含まれないかな なので、やることとしては splitして、各要素をスペース分割、最初の一要素をcmdにぶち込んで、prefix〜 

velvelhype commented 1 year ago

まずはパーサーはできた prefix処理やる必要もあるかもしれないが、とりあえずJOINの処理について調べ始める