The goal of this project is to create a web based or PSP Application (1.0-1.5) that can send commands to the XBMC HTTP API
Would it be easier to do a web based app? YES and NO
I would like to code this APP with the PSPSDK so it would be more stable and not depend on a defunct hacked web broswer(s). I would like to send the commands from the PSP to XBMC via WiFi, and maybe later on incorperate some streaming support for MP3/PHOTOS/ and maybe someday VIDEO :) For the most part the devs of XBMC have done all the xbox side of it ... all I need to do is get the PSP to talk to the XBOX and make it understand :)
If you are interested in this project and would like to help please email me and reply to this post. :)
http://www.xboxmediacenter.com/ (for more info on Xbox Media Center)
With that said here is a list of the commands from the CVS (thanks to AlTheKill and TechnoJuice for the guidance):
BASIC HTML:
<your xbox ip>/xbmcCmds/xbmcHttp?command=<comman>
Code: Select all
/* Parse an XBMC HTTP API command */
CStdString CXbmcHttp::xbmcProcessCommand( int eid, webs_t wp, char_t *command, char_t *parameter)
{
  int numParas;
  CStdString paras[MAX_PARAS], retVal;
  if (strlen(parameter)<300)
    CLog::Log(LOGDEBUG, "HttpApi Start command: %s  paras: %s", command, parameter);
  else
    CLog::Log(LOGDEBUG, "HttpApi Start command: %s  paras: [not recorded]", command);
  numParas = splitParameter(parameter, paras, ";");
  if (wp != NULL)
    websHeader(wp);
  if (!stricmp(command, "clearplaylist"))                 retVal =  xbmcClearPlayList(eid, wp, numParas, paras);  
  else if (!stricmp(command, "addtoplaylist"))            retVal =  xbmcAddToPlayList(eid, wp, numParas, paras);  
  else if (!stricmp(command, "playfile"))                 retVal =  xbmcPlayerPlayFile(eid, wp, numParas, paras); 
  else if (!stricmp(command, "pause"))                    retVal =  xbmcAction(eid, wp, numParas, paras,1);
  else if (!stricmp(command, "stop"))                     retVal =  xbmcAction(eid, wp, numParas, paras,2);
  else if (!stricmp(command, "playnext"))                 retVal =  xbmcAction(eid, wp, numParas, paras,3);
  else if (!stricmp(command, "playprev"))                 retVal =  xbmcAction(eid, wp, numParas, paras,4);
  else if (!stricmp(command, "rotate"))                   retVal =  xbmcAction(eid, wp, numParas, paras,5);
  else if (!stricmp(command, "move"))                     retVal =  xbmcAction(eid, wp, numParas, paras,6);
  else if (!stricmp(command, "zoom"))                     retVal =  xbmcAction(eid, wp, numParas, paras,7);
  else if (!stricmp(command, "restart"))                  retVal =  xbmcExit(eid, wp,1);
  else if (!stricmp(command, "shutdown"))                 retVal =  xbmcExit(eid, wp,2);
  else if (!stricmp(command, "exit"))                     retVal =  xbmcExit(eid, wp,3);
  else if (!stricmp(command, "reset"))                    retVal =  xbmcExit(eid, wp,4);
  else if (!stricmp(command, "restartapp"))               retVal =  xbmcExit(eid, wp,5);
  else if (!stricmp(command, "getcurrentlyplaying"))      retVal =  xbmcGetCurrentlyPlaying(eid, wp); 
  else if (!stricmp(command, "getdirectory"))             retVal =  xbmcGetDirectory(eid, wp, numParas, paras); 
  else if (!stricmp(command, "gettagfromfilename"))       retVal =  xbmcGetTagFromFilename(eid, wp, numParas, paras);
  else if (!stricmp(command, "getcurrentplaylist"))       retVal =  xbmcGetCurrentPlayList(eid, wp);
  else if (!stricmp(command, "setcurrentplaylist"))       retVal =  xbmcSetCurrentPlayList(eid, wp, numParas, paras);
  else if (!stricmp(command, "getplaylistcontents"))      retVal =  xbmcGetPlayListContents(eid, wp, numParas, paras);
  else if (!stricmp(command, "removefromplaylist"))       retVal =  xbmcRemoveFromPlayList(eid, wp, numParas, paras);
  else if (!stricmp(command, "setplaylistsong"))          retVal =  xbmcSetPlayListSong(eid, wp, numParas, paras);
  else if (!stricmp(command, "getplaylistsong"))          retVal =  xbmcGetPlayListSong(eid, wp, numParas, paras);
  else if (!stricmp(command, "playlistnext"))             retVal =  xbmcPlayListNext(eid, wp);
  else if (!stricmp(command, "playlistprev"))             retVal =  xbmcPlayListPrev(eid, wp);
  else if (!stricmp(command, "getpercentage"))            retVal =  xbmcGetPercentage(eid, wp);
  else if (!stricmp(command, "seekpercentage"))           retVal =  xbmcSeekPercentage(eid, wp, numParas, paras);
  else if (!stricmp(command, "setvolume"))                retVal =  xbmcSetVolume(eid, wp, numParas, paras);
  else if (!stricmp(command, "getvolume"))                retVal =  xbmcGetVolume(eid, wp);
  else if (!stricmp(command, "setplayspeed"))             retVal =  xbmcSetPlaySpeed(eid, wp, numParas, paras);
  else if (!stricmp(command, "getplayspeed"))             retVal =  xbmcGetPlaySpeed(eid, wp);
  else if (!stricmp(command, "filedownload"))             retVal =  xbmcGetThumb(eid, wp, numParas, paras);
  else if (!stricmp(command, "getthumbfilename"))         retVal =  xbmcGetThumbFilename(eid, wp, numParas, paras);
  else if (!stricmp(command, "lookupalbum"))              retVal =  xbmcLookupAlbum(eid, wp, numParas, paras);
  else if (!stricmp(command, "choosealbum"))              retVal =  xbmcChooseAlbum(eid, wp, numParas, paras);
  else if (!stricmp(command, "filedownloadfrominternet")) retVal =  xbmcDownloadInternetFile(eid, wp, numParas, paras);
  else if (!stricmp(command, "filedelete"))               retVal =  xbmcDeleteFile(eid, wp, numParas, paras);
  else if (!stricmp(command, "filecopy"))                 retVal =  xbmcCopyFile(eid, wp, numParas, paras);
  else if (!stricmp(command, "getmoviedetails"))          retVal =  xbmcGetMovieDetails(eid, wp, numParas, paras);
  else if (!stricmp(command, "showpicture"))              retVal =  xbmcShowPicture(eid, wp, numParas, paras);
  else if (!stricmp(command, "sendkey"))                  retVal =  xbmcSetKey(eid, wp, numParas, paras);
  else if (!stricmp(command, "fileexists"))               retVal =  xbmcFileExists(eid, wp, numParas, paras);
  else if (!stricmp(command, "fileupload"))               retVal =  xbmcSetFile(eid, wp, numParas, paras);
  else if (!stricmp(command, "getguistatus"))             retVal =  xbmcGetGUIStatus(eid, wp);
  else if (!stricmp(command, "execbuiltin"))              retVal =  xbmcExecBuiltIn(eid, wp, numParas, paras);
  else if (!stricmp(command, "config"))                   retVal =  xbmcConfig(eid, wp, numParas, paras);
  else if (!stricmp(command, "help"))                     retVal =  xbmcHelp(eid, wp);
  else if (!stricmp(command, "getsysteminfo"))            retVal =  xbmcGetSystemInfo(eid, wp, numParas, paras);
  else if (!stricmp(command, "getsysteminfobyname"))      retVal =  xbmcGetSystemInfoByName(eid, wp, numParas, paras);
  else if (!stricmp(command, "addtoslideshow"))           retVal =  xbmcAddToSlideshow(eid, wp, numParas, paras);
  else if (!stricmp(command, "clearslideshow"))           retVal =  xbmcClearSlideshow(eid, wp);
  else if (!stricmp(command, "playslideshow"))            retVal =  xbmcPlaySlideshow(eid, wp, numParas, paras);
  else if (!stricmp(command, "getslideshowcontents"))     retVal =  xbmcGetSlideshowContents(eid, wp);
  else if (!stricmp(command, "slideshowselect"))          retVal =  xbmcSlideshowSelect(eid, wp, numParas, paras);
  else if (!stricmp(command, "getcurrentslide"))          retVal =  xbmcGetCurrentSlide(eid, wp);
  else if (!stricmp(command, "getguisetting"))            retVal =  xbmcGUISetting(eid, wp, numParas, paras);
  else if (!stricmp(command, "setguisetting"))            retVal =  xbmcGUISetting(eid, wp, numParas, paras);
  else if (!stricmp(command, "takescreenshot"))           retVal =  xbmcTakeScreenshot(eid, wp, numParas, paras);
  else if (!stricmp(command, "getguidescription"))        retVal =  xbmcGetGUIDescription(eid, wp);
  else if (!stricmp(command, "setautogetpicturethumbs"))  retVal =  xbmcAutoGetPictureThumbs(eid, wp, numParas, paras);
  //Old command names
  else if (!stricmp(command, "deletefile"))               retVal =  xbmcDeleteFile(eid, wp, numParas, paras);
  else if (!stricmp(command, "copyfile"))                 retVal =  xbmcCopyFile(eid, wp, numParas, paras);
  else if (!stricmp(command, "downloadinternetfile"))     retVal =  xbmcDownloadInternetFile(eid, wp, numParas, paras);
  else if (!stricmp(command, "getthumb"))                 retVal =  xbmcGetThumb(eid, wp, numParas, paras);
  else if (!stricmp(command, "guisetting"))               retVal =  xbmcGUISetting(eid, wp, numParas, paras);
  else if (!stricmp(command, "setfile"))                  retVal =  xbmcSetFile(eid, wp, numParas, paras);
  else if (!stricmp(command, "setkey"))                   retVal =  xbmcSetKey(eid, wp, numParas, paras);
  else
    retVal = flushResult(eid, wp, "<li>Error:unknown command\n");
  if (wp!=NULL)
    websFooter(wp);
  CLog::Log(LOGDEBUG, "HttpApi End command: %s", command);
  return retVal;
}