Citation: 6B_955/2017 E. 3

Der Beschwerdeführer obsiegt teilweise betreffend die ambulante Massnahme. Ziffer I.7 des angefochtenen Urteils ist aufzuheben und die Sache zur neuen Entscheidung an die Vorinstanz zurückzuweisen. Im Übrigen ist die Beschwerde abzuweisen, soweit darauf eingetreten werden kann. Der Beschwerdeführer wird nach Massgabe seines Unterliegens kostenpflichtig (Art. 66 Abs. 1 BGG). Ihm sind Gerichtskosten im Umfang von Fr. 1'500.-- aufzuerlegen. Der Kanton Solothurn trägt keine Verfahrenskosten (Art. 66 Abs. 4 BGG). Der Kanton Solothurn hat als teilweise unterliegende Partei dem Beschwerdeführer eine Entschädigung von Fr. 1'500.-- zu bezahlen (Art. 68 Abs. 1 und 2 BGG).