Hi @Snowman, yes I written backup script in nodejs using opennebula xml rpc api and ssh.
principialy I use external snapshot, backup, blockkcommit like is in this official article
http://wiki.libvirt.org/page/Live-disk-backup-with-active-blockcommit