{"action":"created","issue":{"url":"https://api.github.com/repos/svaarala/duktape/issues/563","labels_url":"https://api.github.com/repos/svaarala/duktape/issues/563/labels{/name}","comments_url":"https://api.github.com/repos/svaarala/duktape/issues/563/comments","events_url":"https://api.github.com/repos/svaarala/duktape/issues/563/events","html_url":"https://github.com/svaarala/duktape/issues/563","id":129059075,"number":563,"title":"Add ability to send and receive custom debug messages","user":{"login":"fatcerberus","id":4097841,"avatar_url":"https://avatars.githubusercontent.com/u/4097841?v=3","gravatar_id":"","url":"https://api.github.com/users/fatcerberus","html_url":"https://github.com/fatcerberus","followers_url":"https://api.github.com/users/fatcerberus/followers","following_url":"https://api.github.com/users/fatcerberus/following{/other_user}","gists_url":"https://api.github.com/users/fatcerberus/gists{/gist_id}","starred_url":"https://api.github.com/users/fatcerberus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fatcerberus/subscriptions","organizations_url":"https://api.github.com/users/fatcerberus/orgs","repos_url":"https://api.github.com/users/fatcerberus/repos","events_url":"https://api.github.com/users/fatcerberus/events{/privacy}","received_events_url":"https://api.github.com/users/fatcerberus/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/svaarala/duktape/labels/debugger","name":"debugger","color":"bfdadc"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":12,"created_at":"2016-01-27T07:25:50Z","updated_at":"2016-01-28T16:49:27Z","closed_at":null,"body":"This could be relatively simple, implemented as a custom callback on the target which is called by Duktape when a specific command is received.  Likewise, an API could be added so that the target can send custom messages back to the client.\r\n\r\nFor example, say the number for the Custom command is 812, the client could send `REQ 812 \"foobar\"` and whenever Duktape sees a message beginning `REQ 812`, it calls a callback implemented on the target passing the string \"foobar\" to it.  That callback could then return its own string to be sent back as a reply (REP).\r\n\r\nThis setup would be very powerful for very little footprint impact."},"comment":{"url":"https://api.github.com/repos/svaarala/duktape/issues/comments/176279225","html_url":"https://github.com/svaarala/duktape/issues/563#issuecomment-176279225","issue_url":"https://api.github.com/repos/svaarala/duktape/issues/563","id":176279225,"user":{"login":"fatcerberus","id":4097841,"avatar_url":"https://avatars.githubusercontent.com/u/4097841?v=3","gravatar_id":"","url":"https://api.github.com/users/fatcerberus","html_url":"https://github.com/fatcerberus","followers_url":"https://api.github.com/users/fatcerberus/followers","following_url":"https://api.github.com/users/fatcerberus/following{/other_user}","gists_url":"https://api.github.com/users/fatcerberus/gists{/gist_id}","starred_url":"https://api.github.com/users/fatcerberus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fatcerberus/subscriptions","organizations_url":"https://api.github.com/users/fatcerberus/orgs","repos_url":"https://api.github.com/users/fatcerberus/repos","events_url":"https://api.github.com/users/fatcerberus/events{/privacy}","received_events_url":"https://api.github.com/users/fatcerberus/received_events","type":"User","site_admin":false},"created_at":"2016-01-28T16:49:27Z","updated_at":"2016-01-28T16:49:27Z","body":"Sure, go right ahead!\r\n\r\nTo your question, yes, there is a separate console and GUI debugger.  The GUI debugger is Windows-only though because it's written in .NET and (for whatever reason) Mono won't run it.  That was the impetus for doing this.\r\n\r\nIn the future I'd like to rewrite the GUI debugger so that it uses SSJ under the hood.  That would allow me to only need to maintain one debug client codebase.  For now I have to do double work..."}}