This sample is an example of how you can drag and drop tasks onto the scheduler panel. It also has different availabilities setup for the resources. This scenario is a bit simplified but it will give you an idea of how you can implement this easily.

Note that the js for the example code is not minified so it is readable. See externaldragdrop.js.